package cn.wolfcode._1_;

import org.apache.rocketmq.client.producer.DefaultMQProducer;
import org.apache.rocketmq.common.message.Message;

import java.util.Date;

/**
 * @Author: 普发忠
 * @Date: 2021/11/04/14:20
 */
public class Producer {
    public static void main(String[] args) throws Exception{
        //1 创建一个生产者对象, 并且指定一个生产者组
        DefaultMQProducer producer = new DefaultMQProducer("wolfcode-producer");
        
        //2 设置名字服务的地址
        producer.setNamesrvAddr("192.168.50.21:9876");
        //3 启动生产者
        producer.start();
        String s = new Date().toString();
        //4 创建一个消息
        Message message = new Message(
                "01-hello",
                "B",
                "AAAAAAAAAAAAA".getBytes("utf-8"));
    
        Message message2 = new Message(
                "01-hello",
                "A",
                "BBBBBBBBBBB".getBytes("utf-8"));
        message.putUserProperty("age","15");
        message2.putUserProperty("age","25");
        producer.sendOneway(message);
        producer.sendOneway(message2);
        //5 发送消息
        //同步消息
//        SendResult send = producer.send(message);
//        System.out.println(send.getSendStatus());

//       异步消息
//        producer.send(message, new SendCallback() {
//            @Override
//            public void onSuccess(SendResult sendResult) {
//        //消息发送成功
//                System.out.println("消息发送成功");
//                producer.shutdown();
//
//            }
//
//            @Override
//            public void onException(Throwable throwable) {
//        //消息发送失败
//                System.out.println("消息发送失败");
//                producer.shutdown();
//            }
//        });
//        for (int i = 0; i < 20; i++) {
//            TimeUnit.MILLISECONDS.sleep(200);
//            System.out.println(i);
//        }

        //发送一次性消息

        
        
 
        producer.shutdown();

        
    }
}